package es.androdi;

import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;

import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;

public class ControlLogin extends LinearLayout{
	
	private EditText _txtUsuario;
	private EditText _txtPassword;
	private Button _btnLogin;
	private TextView _lblMensaje;
	
	private OnLoginListener _listener;
	
	public ControlLogin(Context context) {
		super(context);
		inicializar();
	}
	
	public ControlLogin(Context context, AttributeSet attrs){
		super(context,attrs);
		inicializar();
		
		TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.ControlLogin);
		String txtLogin = a.getString(R.styleable.ControlLogin_login_text);
		
		_btnLogin.setText(txtLogin);
		a.recycle();
	}
	
	private void inicializar(){
		//Utilizamos el layout 'controlLogin' como interfaz del control
		String infService = Context.LAYOUT_INFLATER_SERVICE;
		LayoutInflater li = (LayoutInflater)getContext().getSystemService(infService);
		li.inflate(R.layout.login, this, true);
		
		//Obtenemos las referencias a los distintos control
	    _txtUsuario = (EditText)findViewById(R.id.TxtUsuario);
	    _txtPassword = (EditText)findViewById(R.id.TxtPassword);
	    _btnLogin = (Button)findViewById(R.id.BtnLogin);
	    _lblMensaje = (TextView)findViewById(R.id.LblMensajeLogin);
	    
	    //Asociamos los eventos necesarios
	    asignarEventos();
		
	}
	
	private void asignarEventos(){
		_btnLogin.setOnClickListener(new OnClickListener() {
			@Override
			public void onClick(View v) {
				_listener.onLogin(_txtUsuario.getText().toString(), _txtPassword.getText().toString());
				
			}
		});
	}
	
	public void setOnLoginListener(OnLoginListener l){
		_listener = l;
	}
	
	public void setMensajeLogin(String msg){
		_lblMensaje.setText(msg);
	}
}
